(define msg "The quick brown fox jumps over the lazy dog.")
(define key 13)

(define (caesar char)
  (let* ((a* (char->integer #\A))
         (z* (char->integer #\Z))
         (a (char->integer #\a))
         (z (char->integer #\z))
         (c (char->integer char)))
    (integer->char
     (if (if (<= a* c) (<= c z*) #f)
         (+ a* (modulo (+ key (- c a*)) 26))
         (if (if (<= a c) (<= c z) #f)
             (+ a (modulo (+ key (- c a)) 26))
             c))))) ; Return other characters verbatim.

(define t1 (print (list->string (map caesar (string->list msg)))))

